/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package origendatos.dyd.model;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

/**
 *
 * @author erodrig
 */
@Entity
@Table(name = "HABILIDADES_PJ")
@NamedQueries({
    @NamedQuery(name = "HabilidadesPj.findAll", query = "SELECT h FROM HabilidadesPj h"),
    @NamedQuery(name = "HabilidadesPj.findByNombre", query = "SELECT h FROM HabilidadesPj h WHERE h.habilidadesPjPK.nombre = :nombre"),
    @NamedQuery(name = "HabilidadesPj.findByModificadoresVarios", query = "SELECT h FROM HabilidadesPj h WHERE h.modificadoresVarios = :modificadoresVarios"),
    @NamedQuery(name = "HabilidadesPj.findByCaracteristicaClave", query = "SELECT h FROM HabilidadesPj h WHERE h.caracteristicaClave = :caracteristicaClave"),
    @NamedQuery(name = "HabilidadesPj.findByModificadorHabilidad", query = "SELECT h FROM HabilidadesPj h WHERE h.modificadorHabilidad = :modificadorHabilidad"),
    @NamedQuery(name = "HabilidadesPj.findByModificadorCaracteristica", query = "SELECT h FROM HabilidadesPj h WHERE h.modificadorCaracteristica = :modificadorCaracteristica"),
    @NamedQuery(name = "HabilidadesPj.findByRangos", query = "SELECT h FROM HabilidadesPj h WHERE h.rangos = :rangos"),
    @NamedQuery(name = "HabilidadesPj.findByPjId", query = "SELECT h FROM HabilidadesPj h WHERE h.habilidadesPjPK.pjId = :pjId"),
    @NamedQuery(name = "HabilidadesPj.findByCasillero", query = "SELECT h FROM HabilidadesPj h WHERE h.casillero = :casillero"),
    @NamedQuery(name = "HabilidadesPj.findByParentesis", query = "SELECT h FROM HabilidadesPj h WHERE h.parentesis = :parentesis")})
public class HabilidadesPj implements Serializable {
    private static final long serialVersionUID = 1L;
    @EmbeddedId
    protected HabilidadesPjPK habilidadesPjPK;
    @Column(name = "MODIFICADORES_VARIOS", length = 20)
    private String modificadoresVarios;
    @Column(name = "CARACTERISTICA_CLAVE", length = 12)
    private String caracteristicaClave;
    @Column(name = "MODIFICADOR_HABILIDAD")
    private Integer modificadorHabilidad;
    @Column(name = "MODIFICADOR_CARACTERISTICA")
    private Integer modificadorCaracteristica;
    @Column(name = "RANGOS")
    private Integer rangos;
    @Column(name = "CASILLERO", length = 1)
    private String casillero;
    @Column(name = "PARENTESIS", length = 60)
    private String parentesis;

    public HabilidadesPj() {
    }

    public HabilidadesPj(HabilidadesPjPK habilidadesPjPK) {
        this.habilidadesPjPK = habilidadesPjPK;
    }

    public HabilidadesPj(String nombre, int pjId) {
        this.habilidadesPjPK = new HabilidadesPjPK(nombre, pjId);
    }

    public HabilidadesPjPK getHabilidadesPjPK() {
        return habilidadesPjPK;
    }

    public void setHabilidadesPjPK(HabilidadesPjPK habilidadesPjPK) {
        this.habilidadesPjPK = habilidadesPjPK;
    }

    public String getModificadoresVarios() {
        return modificadoresVarios;
    }

    public void setModificadoresVarios(String modificadoresVarios) {
        this.modificadoresVarios = modificadoresVarios;
    }

    public String getCaracteristicaClave() {
        return caracteristicaClave;
    }

    public void setCaracteristicaClave(String caracteristicaClave) {
        this.caracteristicaClave = caracteristicaClave;
    }

    public Integer getModificadorHabilidad() {
        return modificadorHabilidad;
    }

    public void setModificadorHabilidad(Integer modificadorHabilidad) {
        this.modificadorHabilidad = modificadorHabilidad;
    }

    public Integer getModificadorCaracteristica() {
        return modificadorCaracteristica;
    }

    public void setModificadorCaracteristica(Integer modificadorCaracteristica) {
        this.modificadorCaracteristica = modificadorCaracteristica;
    }

    public Integer getRangos() {
        return rangos;
    }

    public void setRangos(Integer rangos) {
        this.rangos = rangos;
    }

    public String getCasillero() {
        return casillero;
    }

    public void setCasillero(String casillero) {
        this.casillero = casillero;
    }

    public String getParentesis() {
        return parentesis;
    }

    public void setParentesis(String parentesis) {
        this.parentesis = parentesis;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (habilidadesPjPK != null ? habilidadesPjPK.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof HabilidadesPj)) {
            return false;
        }
        HabilidadesPj other = (HabilidadesPj) object;
        if ((this.habilidadesPjPK == null && other.habilidadesPjPK != null) || (this.habilidadesPjPK != null && !this.habilidadesPjPK.equals(other.habilidadesPjPK))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "origendatos.dyd.model.HabilidadesPj[habilidadesPjPK=" + habilidadesPjPK + "]";
    }

}
